package com.smbms.pojo;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;
import org.springframework.format.annotation.DateTimeFormat;

@Data
@TableName("SMBMS_user")
public class User {
	@TableId(type = IdType.AUTO)
	private Integer id; // id
	@NotEmpty(message = "用户编码不能为空")
	private String userCode; // 用户编码

	private String userName; // 用户名称

	private String userPassword; // 用户密码

	private Integer gender; // 性别

	@DateTimeFormat(pattern = "yyyy-MM-dd")
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date birthday; // 出生日期
	private String phone; // 电话
	private String address; // 地址
	private Integer userRole; // 用户角色
	private Integer createdBy; // 创建者
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date creationDate; // 创建时间
	private Integer modifyBy; // 更新者
	private Date modifyDate; // 更新时间

	@TableField(exist = false)
	private Integer age;//年龄

	@TableField(exist = false)
	private String  userRoleName; // 用户角色名称

	private String idPicPath; // 证件照路径

	private String workPicPath; // 工作证照片路径

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
		this.age = new Date().getYear() -birthday.getYear();
	}
}
